


Magnetism

by avoidingavoidance



Category: One Piece
Genre: Bottom Vinsmoke Sanji, Explicit Sexual Content, M/M, Post-Alabasta, Pre-Timeskip, Top Roronoa Zoro, idiots to lovers
Language: English
Status: Completed
Published: 2021-02-20
Updated: 2021-02-20
Packaged: 2021-03-16 03:21:49
Rating: Explicit
Warnings: No Archive Warnings Apply
Chapters: 1
Words: 9,035
Publisher: archiveofourown.org
Story URL: https://archiveofourown.org/works/29569539
Author URL: https://archiveofourown.org/users/avoidingavoidance/pseuds/avoidingavoidance
Summary: In which Zoro starts some shit, and Sanji finishes it.
Relationships: Roronoa Zoro/Vinsmoke Sanji
Comments: 14
Kudos: 252





	Magnetism

If the smooth, round top of Merry’s head is Luffy’s favorite seat, then the stern of the ship tucked behind the galley is Zoro’s. 

It’s quiet and secluded, but big enough that he has plenty of room to train. His crewmates come to hang out from time to time, Chopper more than anyone else, but for the most part they don’t disturb him, usually leaving Zoro to his weights and his thoughts. 

The exception, of course, is the damn cook.

The bastard makes his rounds around the girls several times a day, complimenting them as loudly as possible whenever he does, but Zoro can block that out if he really needs to focus. He can never quite block out the cook himself, though, especially if he makes one of his rare sojourns to Zoro’s lair. 

“Oi, meathead,” comes that smooth, familiar sass, just on time. Think of the devil, or something.

Zoro doesn’t stop the steady rhythm of his handstand push-ups, but he does hang his head to frown at the cook. “The hell do you want?”

Sanji clicks his tongue and walks closer. “Some way to treat the guy who’s trying to feed your dumb ass.” Zoro notices then that Sanji’s holding a plate of rice balls, and his stomach takes the liberty of growling loudly enough that one could easily mistake it for a sea king’s war cry.

The cook rolls his eye and steps closer, gracefully kicking Zoro across the ass and knocking him out of his handstand. He sticks the landing, thankfully, but gives Sanji a glare for good measure.

“Eat, asshole.”

Zoro huffs, but takes the plate, and without another thought, shovels the rice balls into his mouth.

As much as he’s trying not to pay attention, Zoro couldn’t miss Sanji’s disgusted yet amused snort if he tried. He raises an eyebrow in question, his cheeks too stuffed to verbalize it.

Somehow, though, Sanji understands. He always does. “Can you even taste them like that?”

The answer is obvious. Of course he can taste them. He always can, no matter how fast he eats. It’s honestly kind of a problem, but Zoro refuses to read far enough into it to figure it out. 

Rather than answer honestly, Zoro shakes his head with a flat expression. Sanji clicks his tongue irritably, but doesn’t rise to his bait, instead lighting a cigarette and waiting patiently to reclaim his plate, and for some reason, Zoro feels uncomfortably transparent.

The feeling of discomfort only grows as Zoro eats. He always feels like this around the cook, always feels like he’s made of glass. Bulletproof glass, but glass nonetheless. 

He doesn’t even know if Sanji’s paying that much attention to him. Hell, outside of a fight he can barely read the man at all, and for someone like Zoro, that feeling is peak discomfort. He trusts Sanji with his life, just like everyone else on the crew, but Zoro’s getting pretty tired of feeling like he’s the only one in danger of losing control.

As he finishes the last rice ball, Sanji exhales a cloud of smoke and reaches for the plate. 

Zoro, feeling exceptionally defiant, holds it out of his reach.

Sanji snorts yet more smoke. “What, you planning to eat the plate too?”

“So what if I am?”

The cook scowls. “Can you not? I use that.”

Zoro doesn’t really know what he’s doing, or why. He just really wants to get a rise out of the cook right now, to crack that cool exterior of his, to get under his skin, and being an ass is the easiest way to do that.

The cook shifts his weight subtly, and Zoro just barely manages to bring his arm up in time to block the fierce kick aimed at his skull.

He grins triumphantly. Just as he’d wanted, Sanji grits his teeth and glares at him, looking just the slightest bit disheveled.

Zoro’s heart pounds.

He blocks a few more kicks, always keeping the plate out of the cook’s reach, until finally Sanji tilts hard enough that he leaves an opening in his guard.

Before Zoro even fully realizes it, he’s reaching for that opening.

He dodges another kick and wraps his arm over Sanji’s shin, then sweeps his other leg out from under him, leaving the cook no choice but to fall right on his ass at Zoro’s feet.

“Fuck you,” Sanji snarls, wrenching his leg out of Zoro’s grip. “Give me my damn plate.”

Zoro doesn’t.

From the moment this fight started, Zoro’s not sure he’s had a single coherent thought, and right now is no different.

So, unthinking, Zoro crouches between Sanji’s spread thighs and grabs his loosened tie, looping the fabric tightly over his knuckles to solidify his grip.

“Oi, cactus, you trying to start a fight?” Sanji growls, his face flushed with anger.

The plate clatters to the deck. Head still empty, Zoro blinks slowly before reaching out with his now free hand and plucking the still-smoking cigarette from between Sanji’s lips. He flips it around and, without breaking eye contact, puts it between his own lips. Keenly aware of the way Sanji’s eye is widening, he takes a long drag off the cigarette, then blows a steady stream of smoke out of his nose before answering the cook’s question.

“Yeah.”

Zoro uses his grip on Sanji’s tie to pull him closer, and as he does, time seems to stop. Sanji hasn’t killed him yet, so Zoro leans in and presses their lips together, and suddenly most of the complicated things he feels around the damn cook make a little more sense.

Despite their earlier scuffle, the kiss is slow, almost cautious. Sanji’s frozen against him, his breath stuttering in his chest, lips soft against his.

All at once, Zoro realizes what the fuck he’s doing.

He rears away from Sanji and lifts his arm to block the kick he knows must be coming.

It doesn’t, though.

Sanji’s just staring at him, eye wide, face bright tomato red, his fingers coming to rest on his lips.

Dimly, Zoro thinks it’s a damn good look for him.

He stands quickly, throwing the cigarette overboard, and feels himself flushing just as red as the cook. “I’m sleeping through dinner,” he decides aloud. “Just leave mine somewhere he won’t find it, I’ll eat it on watch.”

With that, Zoro grabs his swords and leaves quickly, before Sanji can recover enough to yell at him, or to bring up the fact that there is nowhere in the Grand Line that is safe from their captain’s voracious leftover senses.

\--

Neither of them bring it up. 

Zoro doesn’t know about Sanji, but for himself, he’s pretty sure he’s losing his fucking mind.

Sanji should be hunting his ass down, demanding an explanation or just plain kicking his ass. Or worse, maybe he should be avoiding Zoro entirely, skittering away from him and never being alone with him at all costs.

The cook, for some reason, is doing no such thing.

In fact, he’s not acting any differently in any way. The closest sign of stress Zoro can find is that Sanji _might_ be smoking more than usual. 

After a few days, Zoro realizes that maybe he’s the one acting weird.

For starters, they haven’t fought since then. Not once. They’re not getting along, exactly, but they’re not breaking the ship either. It’s been... peaceful. 

It’s weird.

Unfortunately, enough time has passed that bringing it up now would be hideously awkward, at best. 

At worst? Catastrophic.

Zoro doesn’t get the luxury of juggling that dilemma for long, though, because about twenty minutes after he begins his mental gymnastics, a cannonball shatters the starboard wall of the galley.

It exits as quickly as it had come, erupting from the other side of the kitchen in a shitty firework of splintered wood before dropping lamely into the choppy sea.

Even on a direct hit, a cannonball won’t kill the cook. Zoro knows that. There’s a reason they’re both lumped into the ‘freaks of nature’ team with Luffy and Robin. Sanji is sturdy, damn near unkillable, and _far_ too stubborn to let a random cannonball end his adventure early. 

Zoro knows these things implicitly, but his heart still jams itself up into his throat, hammering so loud he can’t even hear the waves lapping at Merry’s hull anymore.

He turns his ire to the enemy ship, already fastening his bandanna over his hair. The ship comes closer, the pirates wooping excitedly. It’s a pretty dire mistake on their part, but Zoro’s in a rough mood, and he finds he’s more than willing to teach them a little lesson.

As he moves to the side of the ship, Zoro notices Sanji standing in the hole left by the cannonball’s entry, an unmistakably homicidal aura radiating from him as he calmly lights a cigarette.

Zoro grins widely, then places Wado between his sharp teeth as he turns back to the pirates who think they’re boarding the Merry, already feeling himself fall into the electric rhythm of combat.

\--

Between the two of them, they make extremely quick work of the ill-fated raiders. Luffy had come midway through to “help,” although upon assessing the situation, he’d decided the enemy team was too boring, and that his talents were better suited to raiding their galley. 

The other members of the Strawhat crew had barely flinched during the whole ordeal. When they saw Zoro and Sanji squaring up, most of them had gone back to what they were doing, even as the salty sea air filled with the sounds of swords clashing, wood breaking, and men screaming.

When they’re done, they hop back onto the Merry with Luffy in tow, their breath even, not a drop of sweat on them. Usopp had righted the rudder and brought spare wood into the galley, and he’s making good progress on patching the new holes, complaining loudly to a sympathetic Chopper about the disrespect of other pirates these days.

He looks up when the door creaks open, raising his eyebrows at Zoro and Sanji. That wimpy fight wasn’t anywhere near enough to sate their combined bloodlust, and everyone on the ship knows it. So when Zoro stomps over to Usopp and tugs the hammer out of his hand, Usopp lets him, turning to usher Chopper and himself out of the galley. 

The hollow clap of the hammers fills the quiet left in their friends’ wake. They each stick to a wall, patching the holes in something approaching companionable silence.

Zoro finishes his side faster, seeing as Usopp had already been halfway done when he started. He’s still buzzing, though, still dissatisfied, so he stalks over to Sanji’s side and wordlessly starts helping. 

The cook is chain-smoking and grinding his teeth, stepping on Zoro’s foot more often than not, but he hasn’t told Zoro to fuck off yet, so he doesn’t. He just deals with it, grumbling whenever Sanji is particularly in his way, or when his grouchy smoke clouds grow too thick to see what he’s doing.

When they’ve fixed both holes, they stand back and admire their slapdash work, but both of them know it’s still not enough, not yet. Sanji’s still grinding his teeth, and Zoro’s still wearing his bandanna, too worked up to even consider removing it just yet. 

Sanji breathes a stormcloud of smoke, crushing his cigarette out in the over-crowded ashtray, then turns to glare at Zoro.

They size each other up for a long moment, and when Sanji doesn’t introduce his boot to Zoro’s skull, Zoro strides up to him, fists his hands in his shirt, and shoves.

He pushes him until Sanji’s back hits the wall, then keeps pushing, keeps moving forward until their bodies are pressed together, until their panting breath mingles in the bare space between their lips, and when Sanji lets him do it, wrapping one hand around the nape of Zoro’s neck and squeezing, he finds himself giving in to that lingering urge again.

This kiss is hotter, needier than the first one, but so much better, because this time Sanji’s kissing him back. 

With a low groan, Zoro licks into him, dimly aware of Sanji’s hands on him, the tips of his fingers digging in wherever they land so he can pull him even closer. Their tongues tangle, teeth roughly finding dry lips, breathing in each other’s heated sighs and muffled sounds. 

Somehow, they manage to work out their frustration like this without killing each other. They kiss until the grating feeling of an unfulfilling fight dies down, until their desperate kisses grow tamer, slower, more exploratory.

Before he can get too caught up, though, Zoro remembers himself and pulls back, licking his lips as he stares at Sanji.

The kick has to be coming this time, or at least the shouting.

Just like last time, it doesn’t.

Instead, Sanji grins at him, the attractive bastard, and then he reaches up and pulls Zoro’s bandanna right off his head.

The terrifying thing is, Zoro lets him.

As he loses himself in Sanji’s dark, amused gaze, Zoro begins to wonder for the first time in his life if he might be in over his head.

Before either of them can say anything, do anything, the top stair outside the galley door creaks, and they fly away from each other as if burned.

Luffy, Usopp, and Chopper all pile through the door a moment later, Luffy screaming for meat, the other two caught up in his excitement. Zoro makes a show of picking up Usopp’s hammer and the leftover nails, carefully not looking over at Sanji, who casually lights another cigarette.

Zoro hands Usopp his tools, and out of the corner of his eye, sees Luffy grinning at him almost knowingly, which is nothing if not alarming. Luffy may be a dumbass, but he’s eerily observant at all times, and Zoro’s not really sure he wants to give him that kind of opening right now. Rather than meet his gaze, Zoro turns away and hastily escapes the galley.

In his rush, he fails to realize that his bandanna isn’t tied to his bicep, nor shoved into his pockets. 

\--

Later that evening, Zoro stands from the dinner table to start his night watch. There are still a few people lingering at the table, so he doesn’t look over at Sanji, no matter how much he wants to.

“Oi, shitty swordsman.”

Well, shit.

Zoro turns and glares at the cook, grunting in question.

“Don’t leave your disgusting sweat rag lying around my kitchen. Next time, I’m throwing it overboard.”

He’s holding Zoro’s bandanna between two fingers, looking appropriately disgusted around his cigarette. His ears are flushed, though, the way they do every time one of the girls manages to genuinely fluster him.

Rather than soak that in, Zoro snatches it out of Sanji’s hand, then stomps out of the galley.

As he’s tying it back around his bicep, he can’t help but notice that his bandanna smells like cigarette smoke.

He doesn’t hate it nearly as much as he probably should. Or at all, really.

\--

After Robin comes to relieve him from night watch, Zoro skulks down into the cabin, yawning widely as he delicately lays his swords across the couch, then collapses right on the floor. He folds his hands under his head, ready to pass out, but a mute whisper prevents him from immediately falling asleep.

“Moss.”

Zoro frowns deeply and stays quiet, intent on ignoring the cook entirely.

“Mossy. Moss-man. Mossra.”

 _“What?”_ Zoro hisses, his eyes finally flying open.

Sanji’s draped across the hammock above him, one hooded eye peering over the edge. He looks like he’s barely even awake, his hair all mussed from his thin pillow, shirt half unbuttoned.

“Is your tongue pierced?” he finally asks, his voice low, rough with sleep and with the desire to not be overheard, and that tone is almost enough to distract Zoro from the question entirely.

He processes it quickly enough, though, and rather than respond verbally, just sticks his tongue out. He knows Sanji’s sharp eye won’t miss the little gold ball resting in the middle, even in the pitch dark of the cabin.

The cook stares at him, blinking slowly once or twice before rolling over again. Zoro would wonder if he’d already fallen back asleep, if not for the near-silent sound of him swallowing heavily. Zoro smirks to himself, then immediately falls asleep, priding himself on this tiny victory.

\--

Once again, nothing happens for the next few days. 

They don’t say anything about it to each other, but they’re also never alone together, for whatever reason. 

Unfortunately, more often than not, Zoro finds himself staring at the cook.

He’s always found the man attractive. Annoying, sure, and way too damn noisy, but he sure is nice to look at. He knows it, too, the bastard. His slacks are flexible enough to accommodate his graceful fighting style, but somehow still tight enough to hug his tiny ass in incredibly eye-catching ways.

His shirts are no better; they highlight how narrow his strong waist is, and tease at the slender musculature of his arms, and damn it, Zoro’s not sure he’s ever been this uselessly gay before.

Sanji knows he’s staring, too. He has to. Bastard’s too damn perceptive to be unaware of the way Zoro’s eyes are stuck to him. 

Still, neither of them do anything about it, and enough uneventful days pass that Zoro starts wondering how much of this is all in his head. 

When they were fixing the kitchen together, if Zoro hadn’t broken down and kissed him, would Sanji have done it instead? Is he the only one dying of thirst on this ship? Is the cook just going along with it because they’re both pirates stuck on the sea with no one but their own hands to keep them company?

Zoro’s pretty sure he’s overthinking things, which is also a first for him, and he’s entirely certain he doesn’t like it much at all.

\--

As they draw closer to the next island, the weather stabilizes to something comfortably spring-ish. He celebrates by sleeping on deck as much as humanly possible, both because the weather is decent for napping, but also as a bandage for his staring problem.

His dreams unhelpfully star the damn cook half the time, but Zoro does his best to not read into it.

When they land in a friendly-looking port town, the crew draws straws to see who gets ship-watching duty. Zoro’s not too upset when he draws the short straw; if he hadn’t, he’d probably have to help the cook with grocery shopping, and he’s too confused and annoyed with the weird shit his chest has started doing whenever he’s in danger of being alone with Sanji.

While the rest of the crew goes about divvying up errands, Zoro retreats to his recent favorite nap spot, leaned against the door to the anchor room. It’s a secure enough spot, with a good view of the rest of the deck as well as the ladder up to the ship, and it’s far enough away from the galley door that he doesn’t need to do more than open one eye to watch Sanji twirl out of the kitchen, arms loaded with fruity drinks and snacks for the girls.

Mostly the secure location thing, though.

He dozes off quickly, undisturbed by the excited shouting coming from his captain that lasts all the way into town. 

\--

The feeling of something falling into his lap jars Zoro out of his slumber. There’s no danger, no ill intent, so Zoro yawns widely and scrubs the back of his head before looking down at a bulging bag of cherries that seems to have found its home in his lap.

He blinks up at the sky, then around the deck, just in time to see the cook dragging a truly overloaded bag up the stairs and into the galley.

Zoro blinks a few more times to clear the sleepy fog, then yawns again for good measure before standing and slouching up to the galley. 

“Oi, shit cook, you dropped these.” 

Sanji looks over his shoulder and squints at the bag Zoro’s holding. “No I didn’t.”

Zoro snorts, then gently frees his swords from his hip, setting them down on the table along with the cherries before slumping onto one of the benches. He leans back against the table, legs spread wide just to take up space. “You trying to tell me it rains bags of cherries on this island?”

The cook scowls at that, returning to his stocking. “No, idiot, they’re for you.”

That gives Zoro pause. “What.”

“Dumbass cactus,” Sanji grumbles, intentionally audible. “I bought those for _you,_ dickhead.”

“... Oh.”

Zoro doesn’t really know what to do with this information. He can’t even remember the last time he had a cherry, and Luffy’s probably the only person in the entire Grand Line who even knows he likes them. 

He’s confused as hell, but rather than grill Sanji about it, he just pops one of the small fruits into his mouth. 

It tastes just as good as he remembers. Soft and subtly sweet, juicy, just a little tart, and as Zoro coaxes the fruit’s flesh away from the stony pit with his tongue, he closes his eyes and lets himself enjoy it just a little.

He spits the pit into his hand, already reaching for another one when Sanji finishes his stocking and turns to face him. Unable to help himself, Zoro stares up at him, dimly realizing that they’re very, _very_ much alone now, both in the room and on the ship. He tries not to think about it, but the light, squishy pop of a cherry crushed between his fingers most likely gives him away.

Sanji clicks his tongue. “Those were expensive, you damn brute.” He reaches over and pulls Zoro’s hand out of the bag, then crams the squashed cherry right between Zoro’s lips. 

Then, before Zoro can even begin to process what’s happening, two of his fingers are in the cook’s fucking _mouth._

The only reason Zoro doesn’t choke on the cherry is because he clamps his teeth down on it, fortunately dodging the pit. He stares wide-eyed as Sanji sucks the sweet cherry juice off his fingers, making unbroken eye contact as he laves his tongue between them, cleaning him off far more carefully than is really necessary. 

Before Zoro can get his wits together, Sanji pulls his fingers out with a wet pop, then repeats the process with Zoro’s thumb.

By the time Sanji’s finished, Zoro has nervously sucked all the flesh off the cherry in his mouth, leaving the pit resting on his tongue. He damn near swallows it too, but manages to spit it out before he does.

Lightning fast, the cook snatches the pit right out of the air. Zoro would be impressed, but he’s much more concerned with how hot his face feels, probably matching the cherries next to him in color, and with the way Sanji’s dark eye seems like it’s boring straight through him.

“Bastard, I didn’t get these so you could make a mess of my kitchen.”

Zoro blinks at him, and without a word, defiantly flicks the pit still in his hand in the vague direction of the rations storage.

With a snort, Sanji catches that pit too, then stalks closer, standing right between Zoro’s spread legs. He fists his hand in Zoro’s shirt and shakes him slightly. “Hey, the pits are useful too. You trying to start a fight, moss-brain?”

The memory of the last time Sanji asked him that springs to mind. Zoro grins widely, resting his elbows casually on the table behind him.

“Yeah.”

The cook squints at him, and just when Zoro starts expecting a firm kick, Sanji lets go of his shirt.

Instead, he shifts one knee onto the bench beside him, and when Zoro doesn’t move, doesn’t say anything, Sanji straddles him easily, a warm, comfortable weight in his lap.

As much as Zoro wants to move, wants to touch him, to hold him, he keeps his hands where they are.

Sanji stares down at him, idly fisting his hand in Zoro’s shirt again. He’s so damn pretty in the evening sunlight, his eye dark, ears flushed again, and thankfully he doesn’t make Zoro hold out much longer.

He leans in and kisses Zoro hard, sucking the faint taste of cherry juice off his lower lip, and with that, Zoro’s composure breaks.

With a rough groan, he surges up into him, one hand landing possessively on the cook’s narrow waist, the other tangling in soft blonde hair, pulling their bodies firmly together. Sanji sighs against him and tilts his head, licking between Zoro’s lips, and god, Zoro wants him like this all the time. He wants this warmth, this closeness, this electricity coursing between them, and based on the shivering sigh Sanji breathes into him as he leans more of his slight weight into his lap, Zoro’s willing to bet the cook feels something similar. 

As much as he’s enjoying Sanji’s soft lips, the needy swipes of his tongue, the warmth pressing against his half-hard cock is starting to get to Zoro. He sighs hot, then tugs Sanji’s head back and moves his lips to that long, slender throat.

Surprisingly, the cook not only lets Zoro do what he wants, he even melts into the attention, a low moan slipping between his flushed lips. He leans his head aside, too, easily exposing himself to the near-ravenous swordsman. Zoro hums roughly, but appreciatively, the hand on Sanji’s waist slipping further until he has his arm wrapped tight around him. 

He keeps up his attention to the cook’s sensitive pulse, nipping gently and soothing the sting with his tongue. He wants so badly to leave a mark on him, but he resists the urge, mostly because they’re getting along so well at the moment, and Zoro doesn’t want to hear him bitching. Right now he’s much more interested in the stifled little noises Sanji’s making for him.

He drags hot, slow kisses up his throat, but before he gets to find out if the cook has sensitive ears, Sanji distracts him entirely.

With a hitched moan, Sanji rocks his hips down into Zoro’s, and it becomes very apparent that he’s just as into this as Zoro is. He repeats the motion, so fluid, so suggestive that Zoro can’t help but grab his tiny ass in both hands, coaxing him into a needy rhythm with a hot sigh.

Well, if he’s gonna be that way about it.

Zoro huffs against Sanji’s pulse, his grip tightening as he rolls his hips up too, happy to show off just how eager he is to contribute. 

“Fuck,” Sanji breathes, his thighs spreading impossibly wider across Zoro’s lap. He sounds so affected, so turned on Zoro has to hold him down for a moment just so he can grind his arousal against him, the movement both an offer and a question.

Sanji swallows heavily, his head falling back. He reaches up and pulls off his tie, hastily unbuttoning his shirt, and he doesn’t even manage to shrug out of the damn thing before Zoro has his hands on him.

He pets him clumsily, moaning softly against Sanji’s ear. The cook’s skin is hot and smooth, the trail of gold hair leading down his stomach and into his tented pants leaving Zoro’s mouth watering, and suddenly he wants to fuck him so bad it _aches._ He grits his teeth and yanks the shirt off, tossing it aside so he has full access to Sanji’s chest, his stomach, his muscular hips.

While his hands are busy, Zoro leans up to catch Sanji’s lips again, this kiss harder, more desperate than the last, and as he swallows those quiet, pleased sounds, he lets his hands learn the heat of Sanji’s bare skin. 

“O-oi, shitty houseplant,” Sanji manages between kisses, his hands scratching through Zoro’s short hair. 

He grunts in question, moving his lips to the strong line of the cook’s jaw. He doesn’t stop the movements of his hands, though, and when those rough touches distract Sanji, Zoro grins against his ear.

Sensing his amusement, Sanji huffs, then pulls on Zoro’s hair, forcing him to make eye contact. He scowls at the teasing, crooked smile on Zoro’s face, but doesn’t let that derail him again.

“We are not fucking here.”

Zoro’s eyebrows shoot up, but Sanji’s never been anything but blunt with him, so he can’t say he’s too surprised. “Why not?”

The incredulous look Sanji gives him makes him snort. “Are you stupid? We eat here, mossball. I _cook_ here.”

“You smoke here.”

A pause. “That’s different.”

“It really isn’t.”

Sanji growls at him, which is way sexier than it has any right to be. “If you make a mess, I will end you.”

Zoro snorts again. “What if _you_ make a mess?”

The cook splutters at that, but once again, he doesn’t really have a good response. He knows it, too, so when Zoro gives him an almost feral grin, all Sanji can really do is flush loudly. 

“Fine, fuck,” he finally says, throwing his hands up for good measure. “At least fuck me against the wall so you don’t contaminate my work space.”

Rather than take offense to that, Zoro gathers Sanji closer, leaning in until their lips nearly touch. “Sounds like you’re offering, cook.”

Sanji flushes even darker, but doesn’t look away from him, which honestly goes straight to Zoro’s dick like a bolt of lightning.

He hums raggedly, moving his hands back to the cook’s ass. This time, rather than just squeezing and groping, he hoists Sanji’s weight into his hands, then stands easily. Sanji squawks and flails, but wraps his legs around Zoro’s waist tightly, stabilizing himself. Zoro gives him a lecherous smirk, squeezing appreciatively as he turns and walks right over to the kitchen counters. 

“Dumbass, I literally _just_ said—”

“Shut up, I heard you.” Zoro shifts Sanji’s weight to one hand, then grabs the oil decanter sitting on the counter. The cook frowns, but doesn’t protest, so Zoro turns on his heel and moves to push him up against the wall next to the door.

Despite his complaining, Sanji moans softly at the feeling, clearly enjoying being manhandled. Duly encouraged, Zoro leans in to catch his lips again, licking between them insistently. He moves to set Sanji back on his feet, though, which clearly confuses him, based on the whiny little sound he breathes into Zoro.

Rather than answer him, Zoro nips at his lips, then tugs on his belt. “Take these off,” he murmurs, taking a moment to enjoy the way Sanji’s breath hitches. “Before I rip them off.”

“These were expensive, you bastard,” Sanji huffs, his voice attractively rough, his breath short. 

Zoro rolls his eyes, mostly to cover up just how much he’s enjoying seeing the cook like this. “I know. That’s why I’m giving you the chance to save them.”

With a grumble, Sanji moves to comply. He manages to kick his boots off, then pauses and glares at Zoro, who just raises an eyebrow.

Sanji crosses his arms over his chest, though, which puts a truly torturous few inches of space between them. “Take your shirt off,” the cook barks. “And that shitty belly warmer, too, you don’t need it for this.”

Zoro blinks at him, but Sanji has a point; he’s pretty damn overdressed. Rather than fight him on it, Zoro hands him the oil, then whips his shirt over his head, unconcerned for the sound of seams tearing. He balls it up and throws it over his shoulder, then pulls off the haramaki with marginally more care. 

He folds it sloppily and tosses it onto the counter, closely followed by his bandanna. Now shirtless, he quirks an eyebrow at the cook, who’s biting his lip and unabashedly checking him out like Zoro doesn’t spend half his time on the sea shirtless. 

Grinning smugly, Zoro instead grabs the oil from him again, pulling pointedly at Sanji’s belt buckle. The cook huffs, but complies, his fingers shaking slightly as he unbuckles his belt and pulls it out of the loops. His hands move to the fastenings of his pants next, his movements slow and teasingly deliberate as he undoes them, his dark gaze lingering on Zoro’s face.

As he pulls the flaps open, Sanji’s cock strains against his underwear, which is incredibly enticing. Zoro licks his lips, not bothering to hide how much he likes what he sees, and as the cook pushes both his pants and underwear down around his thighs, Zoro easily sinks to his knees to follow them.

Apparently confused, Sanji stops what he’s doing, staring widely at him. “The hell are you doing?”

Zoro rolls his eyes and sets the oil on the floor, then shuffles closer. “What do you think I’m doing?”

Sanji doesn’t respond, instead just swallowing heavily. Rather than explain, Zoro wraps his hand around Sanji’s flushed arousal, humming warmly when clear, sticky precome dribbles over his knuckles. 

“Wasn’t—wasn’t expecting you to wanna do that,” Sanji croaks. Zoro raises a questioning eyebrow, already leaning in to drag his tongue over the soaked head of Sanji’s cock, making sure to flick the ball of his tongue piercing through the slit just to tease. “Fuck—I dunno, thought you’d be too proud or some shit.”

“What does my pride have to do with wanting your dick in my mouth?” Sanji shrugs helplessly, so Zoro gives him a dry look and continues, “Okay, well, unless you have a problem with it, I’m gonna proudly suck your dick now.”

Sanji shakes his head quickly. “By all means. It’s a better use for your damn mouth anyway.”

With a snort, Zoro strokes him again, then wraps his lips around the flushed head. He moans softly at the taste, bobbing his head to take more of him. The cook tastes damn good, and the weight of him on his tongue is surprisingly satisfying. He closes his eyes and moves faster, sucking harder, and when Sanji’s trembling fingers card through his hair again, Zoro rewards him by flicking his piercing against the sensitive skin just under the head of his cock.

Sanji _squeaks_ at that, but the sound is criminally muffled. Zoro looks up at him, and when he finds the cook covering his mouth, he frowns deeply. (Well, as much as he can around a mouthful of dick.)

Rather than fight him about it, though, Zoro redoubles his efforts, swallowing Sanji down and hollowing his cheeks around him. The cook’s strong legs tremble at the feeling, his toes curling against the galley floor, and damn if Zoro doesn’t get impossibly harder at the sight.

As much as he wants to relieve the pressure on his aching arousal, Zoro instead reaches for the oil and slicks his fingers with it. He wraps his dry hand around Sanji’s hip, coaxing him into leaning away from the wall. The cook spreads his thighs, too, as much as he can with his pants around them. He’s flushed so dark, so pretty, his body so eager it has Zoro’s cock throbbing.

He presses his slick fingers against Sanji’s entrance, then pulls his mouth back again to tease his piercing against the head, hoping to get the cook to relax. It seems to have the intended effect, as the first finger slips inside his tight heat almost easily. His cock twitches hard, too, spurting precome over Zoro’s tongue. He swallows absently, then takes him deeper, sucking him slowly, distractingly as he works his finger inside him.

He focuses for now on getting Sanji to let himself be worked open, trying not to be distracted by the way the cook trembles, or by the insistent ache of his own arousal.

The second finger is a tight fit, but Sanji doesn’t seem troubled by the stretch. The hand not covering his mouth is still buried in Zoro’s hair, twitching and pulling whenever he does something Sanji particularly likes. Zoro tries to pay attention to the way the cook reacts to him, to memorize how he likes to be touched, but fuck, Sanji’s so _hot,_ so damn enticing, it’s hard not to lose himself in him.

In an attempt to regain some control, Zoro buries his fingers deep, then curls them searchingly, looking for the spot that’ll make the cook’s strong knees quake.

He finds it soon enough, and his reward is Sanji’s hips bucking, his fingers fisting hard in his hair as he bends over Zoro, a muffled whine escaping him. Zoro groans roughly and rubs his fingers over that spot again, swallowing around him as he does, letting himself enjoy the way the cook’s tight heat clamps down around his fingers.

Sanji starts pulling harder, though, kicking Zoro’s thigh with one foot. “Stop, stop, dammit,” he gasps, so Zoro does. He slips his fingers out of him and pulls off of his cock, his hands going to soothe over Sanji’s hips as he frowns up at him, concerned despite himself.

Finally pulling his hand away from his mouth, Sanji breathes a relieved sigh and slumps back against the wall. He keeps petting Zoro’s hair, closing his eyes as he catches his breath. 

Once Zoro’s certain he hadn’t done something wrong, he stands and moves back into Sanji’s personal space. The man lets him, even lets him kiss him, sighing into him and drawing him closer.

Between kisses, Zoro tugs pointedly at Sanji’s pants and rumbles, “You’re still wearing these? ‘S like you want me to shred them.”

Sanji snorts, resting his forehead against Zoro’s shoulder. “Fuck off, I’ll kick your ass. I was distracted.” Zoro can’t help but breathe a pleased hum at that, and he expects Sanji to kick him for it, so when the cook just shivers and leans into him, Zoro’s brain melts right out of his ears.

“You good, cook?” he asks, his rough voice earning another shiver. He swallows and reaches down to fiddle with the fastenings of his own pants, and when Sanji takes a deep breath and nods, Zoro can’t help the low, animal sound that rumbles from deep in his chest. 

He yanks his own pants open and pulls his cock out, ducking to grab the oil. He slicks his hand again, then wraps it around himself with a quiet groan. Just as he’s about to make good on his threat to Sanji’s pants, the man straightens out and pushes them down enough that he can step out of them, kicking them to the side. 

Zoro sighs appreciatively, running his free hand down one of those strong thighs. Sanji licks his lips and leans in to kiss him again, threading his fingers into Zoro’s hair.

Taking that as his cue, Zoro wraps both hands under Sanji’s thighs and picks him up again, groaning against his lips when those deadly legs wrap around his waist. He leans Sanji against the wall, licking into him hungrily, one hand slipping down to angle his cock against him. 

The hitch of the cook’s breath gives him pause, though.

He leans back enough to look at him, glancing him over for a moment before asking, “Have you done this before?”

Sanji snorts loudly, giving Zoro a cocky grin. “C’mon, king algae, give me _some_ credit.”

“I mean, have you ever taken it.”

The cook rolls his eyes, but there’s an undeniable fondness in the gesture. “ _Yes,_ idiot.” Zoro feels himself frown at that, the idea making him near dizzy with lust. Sanji’s grin widens. “What, you jealous?”

Zoro growls, grinding his dripping arousal against the cook. “Hardly. Just means I don’t have to baby you.”

Sanji barks a laugh. “As if I’d let you.” Zoro snorts, then leans in for another kiss, but before their lips meet, Sanji puts a finger over Zoro’s. “Are you gonna put your dick in me or not?”

Zoro sighs hotly and nips that finger, and in response, angles himself against Sanji again. This time, he rolls his hips smoothly, and when the head slips into him, both of them groan at the feeling. 

In a rare struggle to keep his head on his shoulders, Zoro buries his face in Sanji’s throat, mouthing over his pulse as he sinks into him. He’s so tight, so hot around him Zoro can barely think straight around the urge to take, to _claim_ him. 

He works his cock into him in steady, careful thrusts, his hands gripping Sanji’s ass tight, his weight pressing him hard against the wall. His brain is swimming, but he focuses enough to pay attention to the cook’s uneven breathing, to the way his thighs shake around his waist, even as he pulls Zoro closer, deeper.

Once he bottoms out, he groans against Sanji’s throat and grinds deep, heat flooding his veins in response to how fucking incredible Sanji feels around him. The cook twitches, then breathes a muffled moan, much like his stifled sounds from before, and that’s enough to bring Zoro’s attention back front and center.

He pulls back enough to glare at the cook, who has his head leaned back against the wall, eyes shut tight, that damn hand plastered firmly over all the noises Zoro wants so badly to hear.

“Does it hurt?” he asks, voice low, intimate. Sanji shakes his head, his legs tightening threateningly around Zoro’s hips. Zoro squints at him, and when Sanji blinks his eye open and squints back, Zoro grumbles, “Are you lying?”

Sanji groans, the sound less pleasure and more impatience. “ _No,_ jackass.”

“Then why the hand?”

The cook laughs breathlessly, then shifts his hand to rake through his hair, a crooked, uncertain grin on his face. “Who the hell wants to hear a man moaning?”

He puts his hand back over his mouth, seemingly satisfied, but Zoro glares harder, then leans in and gently takes one of Sanji’s fingers between his teeth. Without breaking eye contact, Zoro pulls Sanji’s hand away and spits his finger to the side. “Clearly I do, asshole, seeing as I’m going to all the trouble to make a man moan.”

Sanji swallows heavily, but doesn’t fight him on it, instead moving his hand to grip Zoro’s bicep.

Pleased, Zoro rocks his hips gently, teasingly, then leans into Sanji’s ear and breathes, “Let me hear you, cook.”

He knows how affected, how needy he sounds, but when he feels the way Sanji tightens around him, how his grip on Zoro’s arms trembles, he can’t bring himself to care.

He’s vulnerable like this, but Sanji’s just as vulnerable, just as exposed. Seems their unfaltering trust in each other extends to this, too.

“C’mon, shitty houseplant,” Sanji wheezes lieu of responding. “Fuck me already.”

Zoro grins at that, then happily obliges.

He starts slow, half for the cook’s sake and half because he still doesn’t really trust the structural integrity of the hastily-repaired galley walls. Before long, though, Sanji’s breathless little moans and the way he squeezes around him with every deep thrust rekindle Zoro’s impatience. 

As he bucks his hips harder, deeper, he groans roughly, fighting the urge to close his eyes. The cook looks way too good like this to miss, between his flushed face, how disheveled he looks, the way his eye goes hazy whenever Zoro hits him particularly well. He’s so damn pretty, Zoro doesn’t think he could look away if he tried. Not that he’d want to, anyway.

As if reading his mind, Sanji moans softly, looking right back at him thought his long eyelashes, and fuck, Zoro can’t help but kiss him.

Sanji melts into him, tilting his head and parting his lips for him, earning himself another ragged moan. He squeezes around him and _whines,_ his short nails digging into Zoro’s arms, and that alone is enough to send a jolt of arousal all through Zoro.

He pauses to shift Sanji’s weight slightly, angling their hips together better, and as he fucks him deeper, harder, Sanji throws his head back against the wall and sighs, “Fuck, you’re so big, what the hell?”

The unexpected praise has Zoro moaning for him, the sound loud and shaky, as he’d failed to bite it down in time. He feels himself twitching inside Sanji, certain that the cook can tell just how bad he’s getting to him. He feels so transparent, but Sanji is nothing if not enthusiastic about it. He pulls Zoro back into him and kisses him deeply, his own affected noises slipping freely between their lips.

Grateful, Zoro moans again, then picks his pace up, fucking him in long, hard strokes. He has a goal now, though, so he focuses on Sanji as he angles his hips carefully.

He knows he’s on the right track when he slams home and Sanji chokes, his lips parting soundlessly, his whole body drawing tight for a moment before he melts altogether with a loud, wavering whine.

“There?” Zoro manages, doing his best to keep that angle.

Sanji swallows and nods, his head falling back against the wall again. “Don’t you fucking _dare_ stop,” he wheezes, his eye rolling shut when Zoro grinds his cock against his sweet spot again.

Zoro grins widely. “Sure, princess.”

Before the cook gathers the brains to kick him for that, Zoro shifts his grip on Sanji’s ass, then starts pounding his cock into him, giving them both what they want so badly. 

With the first deep, rough thrust, Sanji throws his head back against the wall with a dull thud, but if it hurt, he makes no indication. His flushed lip part around a loud, surprised moan, his eye fluttering closed, and all those perfect responses just serve to encourage Zoro. He grits his teeth and keeps it up, moaning roughly when Sanji’s legs tighten around him.

Sanji’s moans grow louder with every unrelenting thrust, until his voice is all Zoro can hear, which is honestly just fine by him. It’s criminal that he’d been hiding it to begin with, that he could ever even think Zoro wouldn’t want to hear him falling apart like this. 

“Fuck, cook,” he growls, leaning his forehead against Sanji’s. “You sound so—so fucking good, damn—”

Sanji whines at the praise, which goes straight to Zoro’s cock, leaving him gasping, head spinning with lust. Fuck, people on the docks can probably hear them, but right now, Zoro cannot find it in himself to care.

Those pretty sounds grow muffled when Sanji tilts his head and kisses Zoro desperately. Zoro had been enjoying them, but the feeling of those lips against his reawakens a voracious hunger in him. He groans and kisses him fiercely, every thought in his brain narrowed down to taking everything Sanji wants to give him.

The pounding of his hips grows erratic as they kiss, but if anything, Sanji seems to enjoy the feeling of Zoro losing control even more. His muffled sounds come louder as their kisses turn messier, sharper, needier, and before long, Zoro realizes he’s close.

He curses raggedly, his hips moving entirely on instinct now. Fortunately, Sanji seems to be on the same page, because he drops one hand from Zoro’s hair, wrapping it instead around his own soaked cock with a loud whimper. He strokes himself quickly, his body tightening, tensing.

“Gonna come,” Zoro manages, turning to mouth along Sanji’s jaw. “Where can I—”

“I-inside, inside, idiot—”

Zoro just groans, the insult feeling more like an endearment. He nods against him, gasping for breath as he fucks into that snug, perfect heat. 

Later, he’ll blame the slip of his tongue on Sanji’s incredible ass making his brain leak out of his ears.

“Close,” he huffs between gritted teeth, moaning when the cook nods frantically. “ _Fuck,_ you’re so tight, _Sanji—”_

The rare sound of his own name from Zoro’s lips sends Sanji flying.

When he comes, he’s _loud,_ and even better, his pleasured cries are laced with Zoro’s name. It’s so unusual to hear him use his name, and hearing it between those gorgeous, hoarse wails is more than enough for Zoro.

He bucks his hips deep a few more times, enjoying the feeling of the cook’s tight heat squeezing around him as he comes for as long as he can. When he can’t take any more, he buries his cock deep and grinds hard, moaning for him as he comes inside him, pressing their bodies impossibly closer.

It takes a long minute for him to even start to recover. He leans his forehead against Sanji’s cheek while he catches his breath. Sanji’s just as out of it as he is, limply holding onto Zoro, every part of him trembling wildly. 

Once he has a fraction of his brain function back, Zoro carefully lowers them both to the floor, crossing his legs and holding Sanji safely in his lap. He leans up and steals another kiss from the dazed man, purring contently when Sanji kisses him back just as lazily. He loops his arms around the cook’s narrow waist and holds him close, licking into him until the ringing in his ears stops.

Between kisses, Sanji nips lightly at Zoro’s lips, then murmurs, “You growing roots, moss man?”

Zoro frowns deeply, tightening his grip on Sanji’s waist without really realizing it. He arches a brow in question, but only because the cook is leaned just too far away to kiss again.

Sanji grins widely and wiggles in his lap. “Wasn’t expecting you to be so clingy.”

“Problem?”

The cook hums thoughtfully, then idly drags his fingers through Zoro’s hair, the touch unusually tender for them. Those fingers trail down Zoro’s ear next, playing with his earrings for a moment. “Not really,” Sanji finally responds. “It’s... kinda nice, actually.”

A warm rush of contentment surges through Zoro then, which is rather confusing, given the circumstances.

Dimly, Zoro realizes he’s enjoying this. A lot, actually, and it doesn’t even have anything to do with how he’s still buried deep inside the other man. 

With a grunt, Zoro lifts Sanji enough that he can pull out of him, but before the cook can get the wrong idea, he tugs him right back into his lap, against his chest. He hooks his chin over the cook’s shoulder for good measure, if only to hide the fact that this prolonged sweetness is starting to make him flush.

“Seriously, cactus-brain, what’s up with you?” Sanji pauses for a long moment, and when Zoro stubbornly ignores him, he lowers his voice further. “You okay?”

Zoro huffs at that, but nods once, wrapping him in his arms just a little tighter.

Sanji’s care makes his chest even warmer. Zoro still feels vulnerable, exposed, but the fingers combing gently through his hair soothe any discomfort he could feel from it.

Finally, the nature of his feelings becomes starkly clear, enough so that even Zoro can’t ignore them anymore.

“Hey, cook,” he mumbles, his voice still rough from earlier. He pauses for a moment to untangle the mess of words jumbled on his tongue before finally continuing. 

“I like you.”

Sanji freezes against him, so Zoro clings just a little tighter, hiding for as long as the cook will let him.

After another long moment, Sanji asks, “What, like, as friends?”

Zoro grumbles loudly. “That like isn’t the kind of like I’m talking about.”

Sanji nods vaguely, then starts squirming in Zoro’s hold, trying to lean back enough to look at him. He resists, because he knows his face is still tomato red, but Sanji’s one of the few people he’s ever encountered who can perfectly match his own strength, whether during a fight or when he’s worming around like this. Zoro gives in after a minute, but stoutly refuses to look Sanji in the eye, instead turning his head to examine the galley door’s hinges.

Sanji stares at him, then tugs pointedly on his earrings. “Oi, don’t just dodge my questions.”

“I’m dodging.”

The cook laughs at that, much cuter than he really has any right to be. Zoro can’t help but glance at him out of the corner of his eye, soothing his thumbs along the strong line of Sanji’s spine.

“You are so emotionally constipated, holy shit,” Sanji all but cackles. Zoro knows he has it bad, because that (very true) statement doesn’t even piss him off. He scowls anyway, just to keep up appearances, reaching down to pinch Sanji’s ass in retaliation. The cook just laughs at that too, lazily lacing his fingers over the back of Zoro’s neck as he gives him a wide, suspiciously soft smile. “I like you too, shitty houseplant.”

Zoro swallows, then nods, still pointedly avoiding eye contact even as he refuses to let the cook leave his lap.

“I’m not gonna stop flirting with the girls, just so we’re clear. We all know I do it for fun.”

Zoro shrugs and steals another glance at the cook. “I’m not gonna stop calling you a shitter.”

“Fine by me.”

“Fine.”

Sanji snorts, then leans over far enough to grab his pants, pulling out his cigarettes and lighter. Zoro idly watches him light one, maybe focusing on his lips wrapped around the filter for a second longer than he really needs to.

Exhaling smoke above them, Sanji shifts in Zoro’s lap, his nose wrinkling slightly. “As much as I’m enjoying this, moss man, I really wanna go wash your jizz out of my ass.”

Zoro stares at him, deadpan. “Your sweet talk really drives me wild, shit cook.”

“Don’t I know it,” Sanji snickers. “Release me, you animal.”

Zoro grumbles, but begrudgingly allows the cook to stand, taking immense pride in the fact that those lethal legs are still trembling slightly. 

As Sanji heads toward the hatch leading down into the bathroom, collecting his clothes as he goes, Zoro dazedly realized his come is dripping down those strong thighs. He takes pride in that too, and more than a little interest.

He stands and follows the cook, intent on harassing him a little more before the rest of the crew makes it back from town.

**Author's Note:**

> i have a [twittr](https://twitter.com/gaarbage)


End file.
